package pay.entity;


import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import pay.config.DataBaseName;
import lombok.Data;

import java.util.Date;


@TableName("coupon_app_user")
@Data
public class CouponAppUserEntity extends BaseEntity {
    /**
     * 主键id
     */
    @TableId
    private Integer id;

    /**
     * 用户id
     */
    @TableField("user_id")
    private String userId;

    /**
     * 优惠券id
     */
    @TableField("coupon_id")
    private Integer couponId;

    /**
     * 优惠券码
     */
    @TableField("coupon_code")
    private String couponCode;


    /**
     * 有效期开始日期
     */
    @TableField("start_time")
    @JsonFormat(pattern = "yyyy/MM/dd HH:mm:ss")
    private Date startTime;

    /**
     * 有效期结束时间
     */
    @TableField("end_time")
    @JsonFormat(pattern = "yyyy/MM/dd HH:mm:ss")
    private Date endTime;

    /**
     * 状态 1-未使用 2-已使用 3-已过期
     */
    @TableField("status")
    private Integer status;

    /**
     * 订单号
     */
    @TableField("order_num")
    private String orderNum;

    /**
     * 使用日期
     */
    @TableField("use_time")
    @JsonFormat(pattern = "yyyy/MM/dd HH:mm:ss")
    private Date useTime;

    /**
     * 逻辑删除
     */
    @TableField("del")
    @TableLogic
    private Integer del;

    /**
     * 赛项id
     */
    @TableField(value = "authenticated_game_project_id")
    private Integer authenticatedGameProjectId;

    /**
     * 优惠券来源 1-注册赠送 2-后台发放 3-券码领取 4-拉新领取
     */
    @TableField(value = "source")
    private Integer source;

    @TableField(exist = false)
    private CouponEntity couponEntity;
}